/*--------------------------------------------------------------------
 * File name: mainwindow.h
 * Author: 刘长达      Version:   1.0     Date:
 * Description:
 * Contents:
 *--------------------------------------------------------------------*/

/*--------------------------------------------------------------------
 *                          文件更新和维护记录
 * Author:	刘长达
 * Date:	2019.11.9
 * Contents: 声明结构体指针 mbsys_depth_struct
 *                  创建初步的函数声明
 * Date:	2019.12.20
 * Contents: 实现数据可视化
 *--------------------------------------------------------------------*/
#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QChart>
#include <QList>
#include <QPointF>
#include <QChartView>
#include <QLineSeries>
#include <QScatterSeries>
#include <QXYSeries>
#include <QHBoxLayout>
#include <QPushButton>
#include <QLabel>
#include <QMainWindow>
#include <QMessageBox>
#include "mb_parse_binary.h"

QT_CHARTS_USE_NAMESPACE

namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    mb_parse_binary mbparse;
    QList<QPointF> point_depth ;
    QList<QPointF> point_seabed ;
    QLineSeries *lineseries = new QLineSeries();
    QChart *chart = new QChart();
    QScatterSeries *scatterseries = new QScatterSeries();
    static int depth_count;
    static int seabed_count;
    bool status_depth_seabed;

    void slot_point_hoverd(const QPointF, bool states);
    void slot_actionParseall_triggered();
    void slot_buttonnext_clicked();
    void slot_buttonfront_clicked();
    void slot_buttondepth_clicked();
    void slot_buttonseabed_clicked();
    void slot_actionBeamLLS_triggered();
    void slot_actionSVM_triggered();
    void slot_actionKmeans_triggered();
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();

private:
    Ui::MainWindow *ui;
};

#endif // MAINWINDOW_H
